<?php

namespace sil18\VitrineBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class DefaultController extends Controller
{
    public function indexAction($name)
    {
        return $this->render('sil18VitrineBundle:Default:index.html.twig', array('name' => $name, 'titre' => 'Accueil'));
    }
    
    public function mentionsAction()
    {
        return $this->render('sil18VitrineBundle:Default:mentions.html.twig', array('titre' => 'Mentions légales'));
    }
    
    public function administrationAction()
    {
        return $this->render('sil18VitrineBundle:Default:administration.html.twig', array('titre' => 'Administration'));
    }
    
    public function compteAction()
    {
        $session = $this->getRequest()->getSession();        
        if ($session->has('idClient')) {
            $idClient = $session->get('idClient');
            
            $client = $this->getDoctrine()->getManager()
                            ->getRepository('sil18VitrineBundle:Client')
                            ->find($idClient);                    
        } else {
            $client = 'Vous n\'êtes pas connecté';
        } 
        return $this->render('sil18VitrineBundle:Default:compte.html.twig', array('titre' => 'Compte', 'client' => $client));
    }
      
    // Liste de toutes les catégories
    public function catalogueAction()    {
        $listeCategories = $this->getDoctrine()->getManager()
                        ->getRepository('sil18VitrineBundle:Categorie')
                        ->findAll();
        return $this->render('sil18VitrineBundle:Default:catalogue.html.twig', array('titre' => 'Nos catégories', 'listeCategories' => $listeCategories));
    } 
    
    // Liste de tous les articles d'une catégorie
    public function articlesParCategorieAction($idCategorie)
    {
        $listeArticlesParCategorie = $this->getDoctrine()->getManager()
                                            ->getRepository('sil18VitrineBundle:Article')
                                            ->findByCategorie($idCategorie);
        $categorie = $this->getDoctrine()->getManager()
                                    ->getRepository('sil18VitrineBundle:Categorie')
                                    ->find($idCategorie);

        return $this->render('sil18VitrineBundle:Default:articlesParCategorie.html.twig',
                array('titre' => 'Articles de la catégorie courante',
                      'idCategorie' => $idCategorie,
                      'categorie' => $categorie,
                      'listeArticlesParCategorie' => $listeArticlesParCategorie
                ));
    }     
}
